package com.itheima.threadtest5;


import java.util.ArrayList;
import java.util.Collections;

public class MyThread extends Thread{
    ArrayList<Integer> list ;   //这个是从外面传进来的 不用加 static 本来就唯一

    public MyThread(ArrayList<Integer> list){
        this.list = list;
    }

    public void run() {
        //循环
        //同步代码块
        //判断共享资源是否结尾
        //判断是否还没用完

        //线程需要轮流抽个奖 用循环 刚那个发红包每个线程只执行一次就不用加循环
        while(true) {
            synchronized (MyThread.class) {
                if (list.size() == 0) {
                    break;
                } else {
                    Collections.shuffle(list);  //集合元素重新排序
                    int prize = list.remove(0); //删第一个
                    System.out.println(this.getName() + "抽到了" + prize + "元");
                }
            }
            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
                throw new RuntimeException(e);
            }   //线程1 执行完了后就睡觉
        }
    }
}
